package com.jhsw.roadsun.module.business.service.expressagegoods;

import com.jhsw.roadsun.framework.common.pojo.PageResult;
import com.jhsw.roadsun.module.business.controller.admin.expressagegoods.vo.ExpressageGoodsPageReqVO;
import com.jhsw.roadsun.module.business.controller.app.expressage.vo.goods.AppExpressageGoodsSaveReqVO;
import com.jhsw.roadsun.module.business.dal.dataobject.expressagegoods.ExpressageGoodsDO;

import javax.validation.Valid;

/**
 * 寄件货物信息 Service 接口
 *
 * @author Ysugar
 */
public interface ExpressageGoodsService {

    /**
     * 创建寄件货物信息
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Long createExpressageGoods(@Valid AppExpressageGoodsSaveReqVO createReqVO);

    /**
     * 删除寄件货物信息
     *
     * @param id 编号
     */
    void deleteExpressageGoods(Long id);

    /**
     * 获得寄件货物信息
     *
     * @param id 编号
     * @return 寄件货物信息
     */
    ExpressageGoodsDO getExpressageGoods(Long id);

    /**
     * 获得寄件货物信息分页
     *
     * @param pageReqVO 分页查询
     * @return 寄件货物信息分页
     */
    PageResult<ExpressageGoodsDO> getExpressageGoodsPage(ExpressageGoodsPageReqVO pageReqVO);

}